import { createApp } from 'vue'
import ProComponents from '@wh/pro-components'
import * as ElementPlusIconsVue from '@element-plus/icons-vue'
import VueKonva from 'vue-konva'
import 'reset-css'
// import 'virtual:windi.css'
import App from './App.vue'
import Tracker from '@wh/tracker'
import router from './router'

const app = createApp(App)
// 放在app实例之后，mount之前
const tracker = new Tracker({
  logServiceOptions: {
    host: 'cn-beijing.log.aliyuncs.com', // 所在区域的host
    project: 'xjy-admin', // project名称
    logstore: 'xjy-admin-store', // logstore名称
    time: 5, // 定义时间，默认是10秒，number类型，选填
    count: 5, // 定义数据条数，默认是10条，number类型，选填
    topic: 'xjy-admin-topic', // topic名称，选填
    source: 'admin', // 不同的应用，可以设置不同的source，方便数据查询
    tags: {
      version: '1.0.0',
    },
  },
  app, // app 实例
  router, // router实例
  getUserId: () => {
    // 获取用户id的方法
    return window.localStorage.getItem('userId') || ''
  },
})
app.config.globalProperties.$tracker = tracker

app.use(ProComponents).use(VueKonva).use(router)
for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
  app.component(key, component)
}
app.mount('#app')
